#ifndef VELOFUNC_H
#define VELOFUNC_H

#include <QDateTime>
#include <QFile>
#include <QString>
#include <QDataStream>
#include <QtMath>
#include <QDir>

#include <global_defines.h>

void SaveVelo_FileHead(QString VeloFileName, SOFTWARESETTINGS mysetting, unsigned int nRB_ovlp, double *Height_values);
void SaveSpec_FileHead(QString SpecFileName, SOFTWARESETTINGS mysetting,
                       unsigned int nRB_ovlp, double *freqAxis, double *Height_values);
void SaveSpec_AddData(QString SpecFileName, quint64 CTms, double currentMotorAngle,
                      unsigned int nRB_ovlp, PSD_DATA *specdata);
void SaveVelo_AddData(QString VeloFileName, qint64 CTms, double currentMotorAngle,
                      double *hVelocity, double *hAngle, double *vVelocity,
                      unsigned int nRB_ovlp);
void Create_DataFolder(QString newpath);
void CalHeightsValues(SOFTWARESETTINGS mysetting, unsigned int nRB_ovlp, double *Height_values);

void SaveLevel_1_FileHead(QString Level_1_FileName, SOFTWARESETTINGS mysetting,
                          unsigned int nRB, double *freqAxis, double *Height_values);

void SaveLevel_2_FileHead(QString Level_2_FileName, SOFTWARESETTINGS mysetting,
                          unsigned int nRB, double *Height_values);

void SaveLevel_3_FileHead(QString Level_3_FileName, SOFTWARESETTINGS mysetting,
                          unsigned int nRB, double *Height_values);

void SaveLidar_FileHead(QString Lidar_FileName, SOFTWARESETTINGS mysetting,
                        unsigned int nRB, double *freqAxis, double *Height_values);

void SaveLevel_1_AddData(QString Level_1_FileName, L1_DATA l1_data);
void SaveLevel_2_AddData(QString Level_2_FileName, L2_DATA l2_data);
void SaveLevel_3_AddData(QString Level_3_FileName, L3_DATA l3_data);
void SaveLidar_AddData(QString Lidar_FileName, LidarLog_DATA lidar_data);


#endif // VELOFUNC_H
